home *** CD-ROM | disk | FTP | other *** search
Unknown | 1990-05-03 | 11.5 KB |
open in:
MacOS 8.1
|
Win98
|
DOS
view JSON data
|
view as text
This file was not able to be converted.
This format is not currently supported by dexvert.
Confidence | Program | Detection | Match Type | Support
|
---|
10%
| dexvert
| Truevision Targa Graphic (image/tga)
| magic
| Supported |
100%
| file
| Targa image data - RGB - RLE 8224 x 8224 x 32 +8224 +8224 - top ">MakeWatch"
| default (weak)
| |
99%
| file
| data
| default
| |
100%
| xdgMime
| image/x-tga
| default
|
|
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 0d 00 0a 1c f4 20 20 20 | 20 20 20 20 20 20 20 20 |..... | |
|00000010| 20 20 3e 4d 61 6b 65 57 | 61 74 63 68 0d 00 14 32 | >MakeW|atch...2|
|00000020| f4 20 50 72 6f 67 72 61 | 6d 20 20 20 20 20 42 41 |. Progra|m BA|
|00000030| 53 49 43 20 53 6f 75 72 | 63 65 20 66 6f 72 20 57 |SIC Sour|ce for W|
|00000040| 61 74 63 68 44 6f 67 20 | 6d 6f 64 75 6c 65 0d 00 |atchDog |module..|
|00000050| 1e 1c f4 20 41 75 74 68 | 6f 72 20 20 20 20 20 20 |... Auth|or |
|00000060| 4e 69 63 6b 20 53 6d 69 | 74 68 0d 00 28 18 f4 20 |Nick Smi|th..(.. |
|00000070| 56 65 72 73 69 6f 6e 20 | 20 20 20 20 41 20 32 2e |Version | A 2.|
|00000080| 30 30 0d 00 32 21 f4 20 | 44 61 74 65 20 20 20 20 |00..2!. |Date |
|00000090| 20 20 20 20 31 32 74 68 | 20 41 70 72 69 6c 20 31 | 12th| April 1|
|000000a0| 39 39 30 0d 00 3c 26 f4 | 20 50 72 6f 67 72 61 6d |990..<&.| Program|
|000000b0| 20 20 20 20 20 53 75 62 | 6a 65 63 74 20 74 6f 20 | Sub|ject to |
|000000c0| 43 6f 70 79 72 69 67 68 | 74 0d 00 46 05 3a 0d 00 |Copyrigh|t..F.:..|
|000000d0| 50 07 eb 20 30 0d 00 5a | 10 de 20 63 6f 64 65 25 |P.. 0..Z|.. code%|
|000000e0| 20 32 30 30 30 0d 00 64 | 36 70 63 3d 31 35 20 20 | 2000..d|6pc=15 |
|000000f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000100| 20 20 20 20 20 20 3a 20 | f4 20 47 65 6e 65 72 61 | : |. Genera|
|00000110| 6c 20 72 65 67 69 73 74 | 65 72 73 0d 00 6e 0b 6c |l regist|ers..n.l|
|00000120| 69 6e 6b 3d 31 34 0d 00 | 78 09 73 70 3d 31 33 0d |ink=14..|x.sp=13.|
|00000130| 00 82 14 4f 53 5f 57 72 | 69 74 65 49 20 3d 20 26 |...OS_Wr|iteI = &|
|00000140| 31 30 30 0d 00 8c 05 3a | 0d 00 96 15 e3 20 70 61 |100....:|..... pa|
|00000150| 73 73 25 3d 34 20 b8 20 | 37 20 88 20 33 0d 00 a0 |ss%=4 . |7 . 3...|
|00000160| 08 50 25 3d 30 0d 00 aa | 0c 4f 25 3d 63 6f 64 65 |.P%=0...|.O%=code|
|00000170| 25 0d 00 b4 05 3a 0d 00 | be 0e 5b 4f 50 54 20 70 |%....:..|..[OPT p|
|00000180| 61 73 73 25 0d 00 c8 05 | 3a 0d 00 d2 4c 45 51 55 |ass%....|:...LEQU|
|00000190| 44 20 30 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |D 0 | |
|000001a0| 20 20 20 20 20 20 20 20 | 20 20 3b 20 4e 6f 20 73 | | ; No s|
|000001b0| 74 61 72 74 20 63 6f 64 | 65 20 2d 20 74 68 69 73 |tart cod|e - this|
|000001c0| 20 69 73 6e 27 74 20 61 | 6e 20 61 70 70 6c 69 63 | isn't a|n applic|
|000001d0| 61 74 69 6f 6e 0d 00 dc | 4c 45 51 55 44 20 49 6e |ation...|LEQUD In|
|000001e0| 69 74 69 61 6c 69 73 65 | 20 20 20 20 20 20 20 20 |itialise| |
|000001f0| 20 20 20 20 20 20 3b 20 | 49 6e 69 74 69 61 6c 69 | ; |Initiali|
|00000200| 73 61 74 69 6f 6e 20 63 | 6f 64 65 20 2d 20 73 65 |sation c|ode - se|
|00000210| 74 73 20 75 70 20 53 57 | 49 20 68 61 6e 64 6c 65 |ts up SW|I handle|
|00000220| 72 0d 00 e6 4f 45 51 55 | 44 20 46 69 6e 61 6c 69 |r...OEQU|D Finali|
|00000230| 73 65 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |se | |
|00000240| 20 20 3b 20 46 69 6e 61 | 6c 69 73 61 74 69 6f 6e | ; Fina|lisation|
|00000250| 20 63 6f 64 65 20 2d 20 | 72 65 73 74 6f 72 65 73 | code - |restores|
|00000260| 20 64 65 66 61 75 6c 74 | 20 68 61 6e 64 6c 65 72 | default| handler|
|00000270| 0d 00 f0 37 45 51 55 44 | 20 30 20 20 20 20 20 20 |...7EQUD| 0 |
|00000280| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000290| 20 3b 20 4e 6f 20 53 65 | 72 76 69 63 65 20 63 61 | ; No Se|rvice ca|
|000002a0| 6c 6c 20 63 6f 64 65 0d | 00 fa 2f 45 51 55 44 20 |ll code.|../EQUD |
|000002b0| 54 69 74 6c 65 20 20 20 | 20 20 20 20 20 20 20 20 |Title | |
|000002c0| 20 20 20 20 20 20 20 20 | 3b 20 54 69 74 6c 65 20 | |; Title |
|000002d0| 73 74 72 69 6e 67 0d 01 | 04 2e 45 51 55 44 20 48 |string..|..EQUD H|
|000002e0| 65 6c 70 54 65 78 74 20 | 20 20 20 20 20 20 20 20 |elpText | |
|000002f0| 20 20 20 20 20 20 20 3b | 20 48 65 6c 70 20 73 74 | ;| Help st|
|00000300| 72 69 6e 67 0d 01 0e 41 | 45 51 55 44 20 43 6f 6d |ring...A|EQUD Com|
|00000310| 6d 61 6e 64 54 61 62 6c | 65 20 20 20 20 20 20 20 |mandTabl|e |
|00000320| 20 20 20 20 20 3b 20 48 | 65 6c 70 20 61 6e 64 20 | ; H|elp and |
|00000330| 43 6f 6d 6d 61 6e 64 20 | 6b 65 79 77 6f 72 64 20 |Command |keyword |
|00000340| 74 61 62 6c 65 0d 01 18 | 05 3a 0d 01 22 0a 2e 54 |table...|.:.."..T|
|00000350| 69 74 6c 65 0d 01 2c 15 | a4 65 71 75 7a 28 22 57 |itle..,.|.equz("W|
|00000360| 61 74 63 68 44 6f 67 22 | 29 0d 01 36 05 3a 0d 01 |atchDog"|)..6.:..|
|00000370| 40 0d 2e 48 65 6c 70 54 | 65 78 74 0d 01 4a 3f a4 |@..HelpT|ext..J?.|
|00000380| 65 71 75 7a 28 22 57 61 | 74 63 68 44 6f 67 22 2b |equz("Wa|tchDog"+|
|00000390| bd 28 39 29 2b 22 32 2e | 30 30 20 28 22 2b c1 91 |.(9)+"2.|00 ("+..|
|000003a0| 24 2c 35 2c 31 31 29 2b | 22 29 20 42 79 20 4e 69 |$,5,11)+|") By Ni|
|000003b0| 63 6b 20 53 6d 69 74 68 | 22 29 0d 01 54 05 3a 0d |ck Smith|")..T.:.|
|000003c0| 01 5e 11 2e 43 6f 6d 6d | 61 6e 64 54 61 62 6c 65 |.^..Comm|andTable|
|000003d0| 0d 01 68 37 a4 63 6f 6d | 6d 61 6e 64 28 22 4c 6f |..h7.com|mand("Lo|
|000003e0| 63 6b 22 2c 20 20 4c 6f | 63 6b 2c 20 20 26 30 30 |ck", Lo|ck, &00|
|000003f0| 30 30 30 30 2c 4c 6f 63 | 6b 53 79 6e 2c 20 20 4c |0000,Loc|kSyn, L|
|00000400| 6f 63 6b 48 6c 70 29 0d | 01 72 38 a4 63 6f 6d 6d |ockHlp).|.r8.comm|
|00000410| 61 6e 64 28 22 58 4c 6f | 63 6b 22 2c 20 58 4c 6f |and("XLo|ck", XLo|
|00000420| 63 6b 2c 20 26 30 30 30 | 30 30 30 2c 58 4c 6f 63 |ck, &000|000,XLoc|
|00000430| 6b 53 79 6e 2c 20 58 4c | 6f 63 6b 48 6c 70 29 0d |kSyn, XL|ockHlp).|
|00000440| 01 7c 39 a4 63 6f 6d 6d | 61 6e 64 28 22 55 6e 4c |.|9.comm|and("UnL|
|00000450| 6f 63 6b 22 2c 55 6e 4c | 6f 63 6b 2c 26 30 30 30 |ock",UnL|ock,&000|
|00000460| 30 30 30 2c 55 6e 4c 6f | 63 6b 53 79 6e 2c 55 6e |000,UnLo|ckSyn,Un|
|00000470| 4c 6f 63 6b 48 6c 70 29 | 0d 01 86 38 a4 63 6f 6d |LockHlp)|...8.com|
|00000480| 6d 61 6e 64 28 22 43 6c | 65 61 6e 22 2c 20 43 6c |mand("Cl|ean", Cl|
|00000490| 65 61 6e 2c 20 26 30 31 | 30 30 30 31 2c 43 6c 65 |ean, &01|0001,Cle|
|000004a0| 61 6e 53 79 6e 2c 20 43 | 6c 65 61 6e 48 6c 70 29 |anSyn, C|leanHlp)|
|000004b0| 0d 01 90 0a 45 51 55 44 | 20 30 0d 01 9a 05 3a 0d |....EQUD| 0....:.|
|000004c0| 01 a4 0c 2e 4c 6f 63 6b | 48 6c 70 0d 01 ae 4e 45 |....Lock|Hlp...NE|
|000004d0| 51 55 53 20 22 2a 4c 6f | 63 6b 20 70 72 6f 76 69 |QUS "*Lo|ck provi|
|000004e0| 64 65 73 20 6c 69 6d 69 | 74 65 64 20 77 72 69 74 |des limi|ted writ|
|000004f0| 65 2d 70 72 6f 74 65 63 | 74 69 6f 6e 20 74 6f 20 |e-protec|tion to |
|00000500| 61 6c 6c 20 41 44 46 53 | 20 64 72 69 76 65 73 2e |all ADFS| drives.|
|00000510| 22 3a 45 51 55 42 20 31 | 33 0d 01 b8 0c 2e 4c 6f |":EQUB 1|3.....Lo|
|00000520| 63 6b 53 79 6e 0d 01 c2 | 1a a4 65 71 75 7a 28 22 |ckSyn...|..equz("|
|00000530| 53 79 6e 74 61 78 3a 20 | 2a 4c 6f 63 6b 22 29 0d |Syntax: |*Lock").|
|00000540| 01 cc 05 3a 0d 01 d6 0d | 2e 58 4c 6f 63 6b 48 6c |...:....|.XLockHl|
|00000550| 70 0d 01 e0 4d 45 51 55 | 53 20 22 2a 58 4c 6f 63 |p...MEQU|S "*XLoc|
|00000560| 6b 20 70 72 6f 76 69 64 | 65 73 20 74 6f 74 61 6c |k provid|es total|
|00000570| 20 77 72 69 74 65 2d 70 | 72 6f 74 65 63 74 69 6f | write-p|rotectio|
|00000580| 6e 20 74 6f 20 61 6c 6c | 20 41 44 46 53 20 64 72 |n to all| ADFS dr|
|00000590| 69 76 65 73 2e 22 3a 45 | 51 55 42 20 31 33 0d 01 |ives.":E|QUB 13..|
|000005a0| ea 0d 2e 58 4c 6f 63 6b | 53 79 6e 0d 01 f4 1b a4 |...XLock|Syn.....|
|000005b0| 65 71 75 7a 28 22 53 79 | 6e 74 61 78 3a 20 2a 58 |equz("Sy|ntax: *X|
|000005c0| 4c 6f 63 6b 22 29 0d 01 | fe 05 3a 0d 02 08 0e 2e |Lock")..|..:.....|
|000005d0| 55 6e 4c 6f 63 6b 48 6c | 70 0d 02 12 4a 45 51 55 |UnLockHl|p...JEQU|
|000005e0| 53 20 22 2a 55 6e 4c 6f | 63 6b 20 75 6e 6c 6f 63 |S "*UnLo|ck unloc|
|000005f0| 6b 73 20 70 72 65 76 69 | 6f 75 73 6c 79 20 77 72 |ks previ|ously wr|
|00000600| 69 74 65 2d 70 72 6f 74 | 65 63 74 65 64 20 41 44 |ite-prot|ected AD|
|00000610| 46 53 20 64 72 69 76 65 | 73 2e 22 3a 45 51 55 42 |FS drive|s.":EQUB|
|00000620| 20 31 33 0d 02 1c 0e 2e | 55 6e 4c 6f 63 6b 53 79 | 13.....|UnLockSy|
|00000630| 6e 0d 02 26 1c a4 65 71 | 75 7a 28 22 53 79 6e 74 |n..&..eq|uz("Synt|
|00000640| 61 78 3a 20 2a 55 6e 4c | 6f 63 6b 22 29 0d 02 30 |ax: *UnL|ock")..0|
|00000650| 05 3a 0d 02 3a 0d 2e 43 | 6c 65 61 6e 48 6c 70 0d |.:..:..C|leanHlp.|
|00000660| 02 44 51 45 51 55 53 20 | 22 2a 43 6c 65 61 6e 20 |.DQEQUS |"*Clean |
|00000670| 77 69 70 65 73 20 61 20 | 73 70 65 63 69 66 69 65 |wipes a |specifie|
|00000680| 64 20 41 44 46 53 20 64 | 72 69 76 65 20 63 6c 65 |d ADFS d|rive cle|
|00000690| 61 6e 20 6f 66 20 61 6e | 79 20 68 69 64 64 65 6e |an of an|y hidden|
|000006a0| 20 76 69 72 75 73 65 73 | 20 6f 72 20 6f 6c 64 22 | viruses| or old"|
|000006b0| 0d 02 4e 36 45 51 55 42 | 20 31 33 3a 45 51 55 53 |..N6EQUB| 13:EQUS|
|000006c0| 20 22 64 61 74 61 20 74 | 68 61 74 20 68 61 73 20 | "data t|hat has |
|000006d0| 62 65 65 6e 20 64 65 6c | 65 74 65 64 2e 22 3a 45 |been del|eted.":E|
|000006e0| 51 55 42 20 31 33 0d 02 | 58 0d 2e 43 6c 65 61 6e |QUB 13..|X..Clean|
|000006f0| 53 79 6e 0d 02 62 23 a4 | 65 71 75 7a 28 22 53 79 |Syn..b#.|equz("Sy|
|00000700| 6e 74 61 78 3a 20 2a 43 | 6c 65 61 6e 20 3c 64 72 |ntax: *C|lean <dr|
|00000710| 69 76 65 3e 22 29 0d 02 | 6c 05 3a 0d 02 76 09 2e |ive>")..|l.:..v..|
|00000720| 4c 6f 63 6b 0d 02 80 4b | 53 54 4d 46 44 20 20 28 |Lock...K|STMFD (|
|00000730| 73 70 29 21 2c 20 7b 52 | 30 2d 52 31 2c 20 6c 69 |sp)!, {R|0-R1, li|
|00000740| 6e 6b 7d 20 20 3b 20 45 | 6e 74 65 72 20 2a 4c 6f |nk} ; E|nter *Lo|
|00000750| 63 6b 20 72 6f 75 74 69 | 6e 65 20 26 20 73 61 76 |ck routi|ne & sav|
|00000760| 65 20 4c 69 6e 6b 20 74 | 6f 20 53 74 61 63 6b 0d |e Link t|o Stack.|
|00000770| 02 8a 34 41 44 52 20 20 | 20 20 52 30 2c 20 64 72 |..4ADR | R0, dr|
|00000780| 69 76 65 73 20 20 20 20 | 20 20 20 20 20 20 20 20 |ives | |
|00000790| 3b 20 55 70 64 61 74 65 | 20 64 72 69 76 65 20 64 |; Update| drive d|
|000007a0| 61 74 61 0d 02 94 11 4d | 4f 56 20 20 20 20 52 31 |ata....M|OV R1|
|000007b0| 2c 20 23 31 0d 02 9e 13 | 53 54 52 42 20 20 20 52 |, #1....|STRB R|
|000007c0| 31 2c 20 5b 52 30 5d 0d | 02 a8 40 41 44 52 20 20 |1, [R0].|..@ADR |
|000007d0| 20 20 52 30 2c 20 6c 6f | 63 6b 5f 74 65 78 74 20 | R0, lo|ck_text |
|000007e0| 20 20 20 20 20 20 20 20 | 3b 20 50 72 69 6e 74 20 | |; Print |
|000007f0| 61 63 6b 6e 6f 77 6c 65 | 64 67 65 6d 65 6e 74 20 |acknowle|dgement |
|00000800| 6d 65 73 73 61 67 65 0d | 02 b2 17 53 57 49 20 20 |message.|...SWI |
|00000810| 20 20 22 58 4f 53 5f 57 | 72 69 74 65 30 22 0d 02 | "XOS_W|rite0"..|
|00000820| bc 18 53 57 49 20 20 20 | 20 22 58 4f 53 5f 4e 65 |..SWI | "XOS_Ne|
|00000830| 77 4c 69 6e 65 22 0d 02 | c6 4b 4c 44 4d 46 44 20 |wLine"..|.KLDMFD |
|00000840| 20 28 73 70 29 21 2c 20 | 7b 52 30 2d 52 31 2c 20 | (sp)!, |{R0-R1, |
|00000850| 70 63 7d 20 20 20 20 3b | 20 45 78 69 74 20 72 6f |pc} ;| Exit ro|
|00000860| 75 74 69 6e 65 2c 20 70 | 75 6c 6c 20 6c 69 6e 6b |utine, p|ull link|
|00000870| 20 26 20 72 65 67 73 20 | 6f 66 66 20 73 74 61 63 | & regs |off stac|
|00000880| 6b 0d 02 d0 49 2e 6c 6f | 63 6b 5f 74 65 78 74 20 |k...I.lo|ck_text |
|00000890| 20 20 45 51 55 53 20 22 | 44 72 69 76 65 73 20 61 | EQUS "|Drives a|
|000008a0| 72 65 20 6e 6f 77 20 4c | 4f 43 4b 20 77 72 69 74 |re now L|OCK writ|
|000008b0| 65 2d 70 72 6f 74 65 63 | 74 65 64 2e 22 3a 45 51 |e-protec|ted.":EQ|
|000008c0| 55 42 20 30 3a 41 4c 49 | 47 4e 0d 02 da 05 3a 0d |UB 0:ALI|GN....:.|
|000008d0| 02 e4 0a 2e 58 4c 6f 63 | 6b 0d 02 ee 4c 53 54 4d |....XLoc|k...LSTM|
|000008e0| 46 44 20 20 28 73 70 29 | 21 2c 20 7b 52 30 2d 52 |FD (sp)|!, {R0-R|
|000008f0| 31 2c 20 6c 69 6e 6b 7d | 20 20 3b 20 45 6e 74 65 |1, link}| ; Ente|
|00000900| 72 20 2a 58 4c 6f 63 6b | 20 72 6f 75 74 69 6e 65 |r *XLock| routine|
|00000910| 20 26 20 73 61 76 65 20 | 4c 69 6e 6b 20 74 6f 20 | & save |Link to |
|00000920| 53 74 61 63 6b 0d 02 f8 | 34 41 44 52 20 20 20 20 |Stack...|4ADR |
|00000930| 52 30 2c 20 64 72 69 76 | 65 73 20 20 20 20 20 20 |R0, driv|es |
|00000940| 20 20 20 20 20 20 3b 20 | 55 70 64 61 74 65 20 64 | ; |Update d|
|00000950| 72 69 76 65 20 64 61 74 | 61 0d 03 02 11 4d 4f 56 |rive dat|a....MOV|
|00000960| 20 20 20 20 52 31 2c 20 | 23 32 0d 03 0c 13 53 54 | R1, |#2....ST|
|00000970| 52 42 20 20 20 52 31 2c | 20 5b 52 30 5d 0d 03 16 |RB R1,| [R0]...|
|00000980| 40 41 44 52 20 20 20 20 | 52 30 2c 20 58 6c 6f 63 |@ADR |R0, Xloc|
|00000990| 6b 5f 74 65 78 74 20 20 | 20 20 20 20 20 20 3b 20 |k_text | ; |
|000009a0| 50 72 69 6e 74 20 61 63 | 6b 6e 6f 77 6c 65 64 67 |Print ac|knowledg|
|000009b0| 65 6d 65 6e 74 20 6d 65 | 73 73 61 67 65 0d 03 20 |ement me|ssage.. |
|000009c0| 17 53 57 49 20 20 20 20 | 22 58 4f 53 5f 57 72 69 |.SWI |"XOS_Wri|
|000009d0| 74 65 30 22 0d 03 2a 18 | 53 57 49 20 20 20 20 22 |te0"..*.|SWI "|
|000009e0| 58 4f 53 5f 4e 65 77 4c | 69 6e 65 22 0d 03 34 4b |XOS_NewL|ine"..4K|
|000009f0| 4c 44 4d 46 44 20 20 28 | 73 70 29 21 2c 20 7b 52 |LDMFD (|sp)!, {R|
|00000a00| 30 2d 52 31 2c 20 70 63 | 7d 20 20 20 20 3b 20 45 |0-R1, pc|} ; E|
|00000a10| 78 69 74 20 72 6f 75 74 | 69 6e 65 2c 20 70 75 6c |xit rout|ine, pul|
|00000a20| 6c 20 6c 69 6e 6b 20 26 | 20 72 65 67 73 20 6f 66 |l link &| regs of|
|00000a30| 66 20 73 74 61 63 6b 0d | 03 3e 4a 2e 58 6c 6f 63 |f stack.|.>J.Xloc|
|00000a40| 6b 5f 74 65 78 74 20 20 | 45 51 55 53 20 22 44 72 |k_text |EQUS "Dr|
|00000a50| 69 76 65 73 20 61 72 65 | 20 6e 6f 77 20 58 4c 4f |ives are| now XLO|
|00000a60| 43 4b 20 77 72 69 74 65 | 2d 70 72 6f 74 65 63 74 |CK write|-protect|
|00000a70| 65 64 2e 22 3a 45 51 55 | 42 20 30 3a 41 4c 49 47 |ed.":EQU|B 0:ALIG|
|00000a80| 4e 0d 03 48 05 3a 0d 03 | 52 0b 2e 55 6e 4c 6f 63 |N..H.:..|R..UnLoc|
|00000a90| 6b 0d 03 5c 4d 53 54 4d | 46 44 20 20 28 73 70 29 |k..\MSTM|FD (sp)|
|00000aa0| 21 2c 20 7b 52 30 2d 52 | 31 2c 20 6c 69 6e 6b 7d |!, {R0-R|1, link}|
|00000ab0| 20 20 3b 20 45 6e 74 65 | 72 20 2a 55 6e 4c 6f 63 | ; Ente|r *UnLoc|
|00000ac0| 6b 20 72 6f 75 74 69 6e | 65 20 26 20 73 61 76 65 |k routin|e & save|
|00000ad0| 20 4c 69 6e 6b 20 74 6f | 20 53 74 61 63 6b 0d 03 | Link to| Stack..|
|00000ae0| 66 34 41 44 52 20 20 20 | 20 52 30 2c 20 64 72 69 |f4ADR | R0, dri|
|00000af0| 76 65 73 20 20 20 20 20 | 20 20 20 20 20 20 20 3b |ves | ;|
|00000b00| 20 55 70 64 61 74 65 20 | 64 72 69 76 65 20 64 61 | Update |drive da|
|00000b10| 74 61 0d 03 70 11 4d 4f | 56 20 20 20 20 52 31 2c |ta..p.MO|V R1,|
|00000b20| 20 23 30 0d 03 7a 13 53 | 54 52 42 20 20 20 52 31 | #0..z.S|TRB R1|
|00000b30| 2c 20 5b 52 30 5d 0d 03 | 84 40 41 44 52 20 20 20 |, [R0]..|.@ADR |
|00000b40| 20 52 30 2c 20 75 6e 6c | 6f 63 6b 5f 74 65 78 74 | R0, unl|ock_text|
|00000b50| 20 20 20 20 20 20 20 3b | 20 50 72 69 6e 74 20 61 | ;| Print a|
|00000b60| 63 6b 6e 6f 77 6c 65 64 | 67 65 6d 65 6e 74 20 6d |cknowled|gement m|
|00000b70| 65 73 73 61 67 65 0d 03 | 8e 17 53 57 49 20 20 20 |essage..|..SWI |
|00000b80| 20 22 58 4f 53 5f 57 72 | 69 74 65 30 22 0d 03 98 | "XOS_Wr|ite0"...|
|00000b90| 18 53 57 49 20 20 20 20 | 22 58 4f 53 5f 4e 65 77 |.SWI |"XOS_New|
|00000ba0| 4c 69 6e 65 22 0d 03 a2 | 4b 4c 44 4d 46 44 20 20 |Line"...|KLDMFD |
|00000bb0| 28 73 70 29 21 2c 20 7b | 52 30 2d 52 31 2c 20 70 |(sp)!, {|R0-R1, p|
|00000bc0| 63 7d 20 20 20 20 3b 20 | 45 78 69 74 20 72 6f 75 |c} ; |Exit rou|
|00000bd0| 74 69 6e 65 2c 20 70 75 | 6c 6c 20 6c 69 6e 6b 20 |tine, pu|ll link |
|00000be0| 26 20 72 65 67 73 20 6f | 66 66 20 73 74 61 63 6b |& regs o|ff stack|
|00000bf0| 0d 03 ac 42 2e 75 6e 6c | 6f 63 6b 5f 74 65 78 74 |...B.unl|ock_text|
|00000c00| 20 45 51 55 53 20 22 44 | 72 69 76 65 73 20 61 72 | EQUS "D|rives ar|
|00000c10| 65 20 6e 6f 77 20 77 72 | 69 74 65 2d 65 6e 61 62 |e now wr|ite-enab|
|00000c20| 6c 65 64 2e 22 3a 45 51 | 55 42 20 30 3a 41 4c 49 |led.":EQ|UB 0:ALI|
|00000c30| 47 4e 0d 03 b6 05 3a 0d | 03 c0 0a 2e 43 6c 65 61 |GN....:.|....Clea|
|00000c40| 6e 0d 03 ca 4c 53 54 4d | 46 44 20 20 28 73 70 29 |n...LSTM|FD (sp)|
|00000c50| 21 2c 20 7b 52 30 2d 52 | 31 32 2c 20 6c 69 6e 6b |!, {R0-R|12, link|
|00000c60| 7d 20 3b 20 45 6e 74 65 | 72 20 2a 43 6c 65 61 6e |} ; Ente|r *Clean|
|00000c70| 20 72 6f 75 74 69 6e 65 | 20 26 20 73 61 76 65 20 | routine| & save |
|00000c80| 4c 69 6e 6b 20 74 6f 20 | 53 74 61 63 6b 0d 03 d4 |Link to |Stack...|
|00000c90| 45 4d 4f 56 20 20 20 20 | 52 34 2c 20 52 30 20 20 |EMOV |R4, R0 |
|00000ca0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 20 | | ; |
|00000cb0| 54 65 6d 70 6f 72 61 72 | 79 20 73 74 6f 72 61 67 |Temporar|y storag|
|00000cc0| 65 20 66 6f 72 20 63 6f | 6d 6d 61 6e 64 20 74 61 |e for co|mmand ta|
|00000cd0| 69 6c 0d 03 de 4b 4d 4f | 56 20 20 20 20 52 31 2c |il...KMO|V R1,|
|00000ce0| 20 52 30 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | R0 | |
|00000cf0| 20 20 20 3b 20 43 6f 6e | 76 65 72 74 20 63 6f 6d | ; Con|vert com|
|00000d00| 6d 61 6e 64 20 73 74 72 | 69 6e 67 20 74 6f 20 61 |mand str|ing to a|
|00000d10| 20 64 72 69 76 65 20 6e | 6f 20 30 2d 37 0d 03 e8 | drive n|o 0-7...|
|00000d20| 1a 4d 4f 56 20 20 20 20 | 52 30 2c 20 23 31 30 2b |.MOV |R0, #10+|
|00000d30| 28 31 3c 3c 32 39 29 0d | 03 f2 11 4d 4f 56 20 20 |(1<<29).|...MOV |
|00000d40| 20 20 52 32 2c 20 23 37 | 0d 03 fc 1c 53 57 49 20 | R2, #7|....SWI |
|00000d50| 20 20 20 22 4f 53 5f 52 | 65 61 64 55 6e 73 69 67 | "OS_R|eadUnsig|
|00000d60| 6e 65 64 22 0d 04 06 30 | 41 44 52 20 20 20 20 52 |ned"...0|ADR R|
|00000d70| 30 2c 20 63 6c 65 61 6e | 5f 74 65 78 74 20 20 20 |0, clean|_text |
|00000d80| 20 20 20 20 20 3b 20 55 | 70 64 61 74 65 20 73 74 | ; U|pdate st|
|00000d90| 72 69 6e 67 0d 04 10 16 | 41 44 44 20 20 20 20 52 |ring....|ADD R|
|00000da0| 31 2c 20 52 32 2c 20 23 | 34 38 0d 04 1a 17 53 54 |1, R2, #|48....ST|
|00000db0| 52 42 20 20 20 52 31 2c | 20 5b 52 30 2c 20 23 36 |RB R1,| [R0, #6|
|00000dc0| 5d 0d 04 24 30 41 44 52 | 20 20 20 20 52 30 2c 20 |]..$0ADR| R0, |
|00000dd0| 6f 73 63 6c 69 20 20 20 | 20 20 20 20 20 20 20 20 |oscli | |
|00000de0| 20 20 3b 20 55 70 64 61 | 74 65 20 73 74 72 69 6e | ; Upda|te strin|
|00000df0| 67 0d 04 2e 17 53 54 52 | 42 20 20 20 52 31 2c 20 |g....STR|B R1, |
|00000e00| 5b 52 30 2c 20 23 38 5d | 0d 04 38 30 41 44 52 20 |[R0, #8]|..80ADR |
|00000e10| 20 20 20 52 30 2c 20 73 | 61 76 65 5f 74 65 78 74 | R0, s|ave_text|
|00000e20| 20 20 20 20 20 20 20 20 | 20 3b 20 55 70 64 61 74 | | ; Updat|
|00000e30| 65 20 73 74 72 69 6e 67 | 0d 04 42 17 53 54 52 42 |e string|..B.STRB|
|00000e40| 20 20 20 52 31 2c 20 5b | 52 30 2c 20 23 36 5d 0d | R1, [|R0, #6].|
|00000e50| 04 4c 3f 41 44 52 20 20 | 20 20 52 30 2c 20 63 6f |.L?ADR | R0, co|
|00000e60| 6d 70 61 63 74 69 6e 67 | 20 20 20 20 20 20 20 20 |mpacting| |
|00000e70| 3b 20 57 72 69 74 65 20 | 61 20 22 43 6f 6d 70 61 |; Write |a "Compa|
|00000e80| 63 74 69 6e 67 20 6d 65 | 73 73 61 67 65 22 0d 04 |cting me|ssage"..|
|00000e90| 56 17 53 57 49 20 20 20 | 20 22 58 4f 53 5f 57 72 |V.SWI | "XOS_Wr|
|00000ea0| 69 74 65 30 22 0d 04 60 | 4e 2e 63 6f 6d 70 61 63 |ite0"..`|N.compac|
|00000eb0| 74 5f 6c 6f 6f 70 20 20 | 20 20 20 20 20 20 20 20 |t_loop | |
|00000ec0| 20 20 20 20 20 20 3b 20 | 43 6f 6d 70 61 63 74 73 | ; |Compacts|
|00000ed0| 20 64 69 73 63 20 75 6e | 74 69 6c 20 53 57 49 20 | disc un|til SWI |
|00000ee0| 72 65 74 75 72 6e 73 20 | 69 6d 6d 65 64 69 61 74 |returns |immediat|
|00000ef0| 65 6c 79 0d 04 6a 21 53 | 57 49 20 20 20 20 22 4f |ely..j!S|WI "O|
|00000f00| 53 5f 52 65 61 64 4d 6f | 6e 6f 74 6f 6e 69 63 54 |S_ReadMo|notonicT|
|00000f10| 69 6d 65 22 0d 04 74 11 | 4d 4f 56 20 20 20 20 52 |ime"..t.|MOV R|
|00000f20| 33 2c 20 52 30 0d 04 7e | 14 41 44 52 20 20 20 20 |3, R0..~|.ADR |
|00000f30| 52 30 2c 20 6f 73 63 6c | 69 0d 04 88 13 53 57 49 |R0, oscl|i....SWI|
|00000f40| 20 20 20 20 22 4f 53 5f | 43 4c 49 22 0d 04 92 21 | "OS_|CLI"...!|
|00000f50| 53 57 49 20 20 20 20 22 | 4f 53 5f 52 65 61 64 4d |SWI "|OS_ReadM|
|00000f60| 6f 6e 6f 74 6f 6e 69 63 | 54 69 6d 65 22 0d 04 9c |onotonic|Time"...|
|00000f70| 16 53 55 42 20 20 20 20 | 52 30 2c 20 52 30 2c 20 |.SUB |R0, R0, |
|00000f80| 23 31 30 0d 04 a6 4a 53 | 57 49 20 20 20 20 4f 53 |#10...JS|WI OS|
|00000f90| 5f 57 72 69 74 65 49 2b | 97 22 2e 22 20 20 20 20 |_WriteI+|."." |
|00000fa0| 20 20 3b 20 50 72 69 6e | 74 73 20 61 20 73 69 6c | ; Prin|ts a sil|
|00000fb0| 6c 79 20 64 6f 74 20 65 | 76 65 72 79 20 74 69 6d |ly dot e|very tim|
|00000fc0| 65 20 6c 6f 6f 70 20 69 | 73 20 72 75 6e 0d 04 b0 |e loop i|s run...|
|00000fd0| 11 43 4d 50 20 20 20 20 | 52 30 2c 20 52 33 0d 04 |.CMP |R0, R3..|
|00000fe0| ba 4c 42 47 54 20 20 20 | 20 63 6f 6d 70 61 63 74 |.LBGT | compact|
|00000ff0| 5f 6c 6f 6f 70 20 20 20 | 20 20 20 20 20 20 20 3b |_loop | ;|
|00001000| 20 49 66 20 6e 6f 20 72 | 65 74 75 72 6e 20 77 69 | If no r|eturn wi|
|00001010| 74 68 69 6e 20 31 30 20 | 63 73 20 74 68 65 6e 20 |thin 10 |cs then |
|00001020| 6c 6f 6f 70 20 61 67 61 | 69 6e 0d 04 c4 18 53 57 |loop aga|in....SW|
|00001030| 49 20 20 20 20 22 58 4f | 53 5f 4e 65 77 4c 69 6e |I "XO|S_NewLin|
|00001040| 65 22 0d 04 ce 17 41 44 | 52 20 20 20 20 52 30 2c |e"....AD|R R0,|
|00001050| 20 63 6c 65 61 6e 69 6e | 67 0d 04 d8 17 53 57 49 | cleanin|g....SWI|
|00001060| 20 20 20 20 22 58 4f 53 | 5f 57 72 69 74 65 30 22 | "XOS|_Write0"|
|00001070| 0d 04 e2 18 53 57 49 20 | 20 20 20 22 58 4f 53 5f |....SWI | "XOS_|
|00001080| 4e 65 77 4c 69 6e 65 22 | 0d 04 ec 0f 2e 77 69 70 |NewLine"|.....wip|
|00001090| 65 5f 63 6c 65 61 6e 0d | 04 f6 3a 4d 4f 56 20 20 |e_clean.|..:MOV |
|000010a0| 20 20 52 30 2c 20 52 34 | 20 20 20 20 20 20 20 20 | R0, R4| |
|000010b0| 20 20 20 20 20 20 20 20 | 3b 20 50 6f 69 6e 74 65 | |; Pointe|
|000010c0| 72 20 74 6f 20 63 6f 6d | 6d 61 6e 64 20 74 61 69 |r to com|mand tai|
|000010d0| 6c 0d 05 00 44 53 57 49 | 20 20 20 20 22 41 44 46 |l...DSWI| "ADF|
|000010e0| 53 5f 46 72 65 65 53 70 | 61 63 65 22 20 20 20 20 |S_FreeSp|ace" |
|000010f0| 20 20 3b 20 46 69 6e 64 | 20 66 72 65 65 73 70 61 | ; Find| freespa|
|00001100| 63 65 20 6f 6e 20 74 68 | 61 74 20 41 44 46 53 20 |ce on th|at ADFS |
|00001110| 64 72 69 76 65 0d 05 0a | 17 42 49 43 20 20 20 20 |drive...|.BIC |
|00001120| 52 35 2c 20 52 30 2c 20 | 23 26 46 46 0d 05 14 18 |R5, R0, |#&FF....|
|00001130| 42 49 43 20 20 20 20 52 | 35 2c 20 52 30 2c 20 23 |BIC R|5, R0, #|
|00001140| 26 33 30 30 0d 05 1e 13 | 4d 4f 56 20 20 20 20 52 |&300....|MOV R|
|00001150| 30 2c 20 23 26 38 33 0d | 05 28 18 41 44 52 20 20 |0, #&83.|.(.ADR |
|00001160| 20 20 52 31 2c 20 73 61 | 76 65 5f 74 65 78 74 0d | R1, sa|ve_text.|
|00001170| 05 32 11 4d 4f 56 20 20 | 20 20 52 32 2c 20 23 30 |.2.MOV | R2, #0|
|00001180| 0d 05 3c 14 53 57 49 20 | 20 20 20 22 4f 53 5f 46 |..<.SWI | "OS_F|
|00001190| 69 6e 64 22 0d 05 46 11 | 54 45 51 20 20 20 20 52 |ind"..F.|TEQ R|
|000011a0| 30 2c 20 23 30 0d 05 50 | 15 42 45 51 20 20 20 20 |0, #0..P|.BEQ |
|000011b0| 65 78 69 74 5f 63 6c 65 | 61 6e 0d 05 5a 11 4d 4f |exit_cle|an..Z.MO|
|000011c0| 56 20 20 20 20 52 31 2c | 20 52 30 0d 05 64 11 4d |V R1,| R0..d.M|
|000011d0| 4f 56 20 20 20 20 52 30 | 2c 20 23 32 0d 05 6e 50 |OV R0|, #2..nP|
|000011e0| 2e 77 72 69 74 65 5f 6c | 6f 6f 70 20 20 20 20 20 |.write_l|oop |
|000011f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 3b 20 53 | | ; S|
|00001200| 61 76 65 20 61 20 76 2e | 62 69 67 20 66 69 6c 65 |ave a v.|big file|
|00001210| 20 6d 61 64 65 20 75 70 | 20 6f 66 20 31 30 32 34 | made up| of 1024|
|00001220| 20 62 79 74 65 20 63 68 | 75 6e 6b 73 0d 05 78 4a | byte ch|unks..xJ|
|00001230| 4c 44 52 20 20 20 20 52 | 32 2c 20 6d 65 73 73 61 |LDR R|2, messa|
|00001240| 67 65 20 20 20 20 20 20 | 20 20 20 20 20 3b 20 6f |ge | ; o|
|00001250| 66 20 6d 65 6d 6f 72 79 | 20 28 74 61 6b 65 6e 20 |f memory| (taken |
|00001260| 66 72 6f 6d 20 61 64 64 | 72 65 73 73 20 26 33 38 |from add|ress &38|
|00001270| 37 46 44 34 34 29 0d 05 | 82 35 4d 4f 56 20 20 20 |7FD44)..|.5MOV |
|00001280| 20 52 33 2c 20 23 31 30 | 32 34 20 20 20 20 20 20 | R3, #10|24 |
|00001290| 20 20 20 20 20 20 20 3b | 20 75 6e 74 69 6c 20 64 | ;| until d|
|000012a0| 69 73 63 20 69 73 20 66 | 75 6c 6c 0d 05 8c 15 53 |isc is f|ull....S|
|000012b0| 57 49 20 20 20 20 22 58 | 4f 53 5f 47 42 50 42 22 |WI "X|OS_GBPB"|
|000012c0| 0d 05 96 52 53 57 49 20 | 20 20 20 22 4f 53 5f 52 |...RSWI | "OS_R|
|000012d0| 65 61 64 45 73 63 61 70 | 65 53 74 61 74 65 22 20 |eadEscap|eState" |
|000012e0| 20 3b 20 49 66 20 65 73 | 63 61 70 65 20 70 72 65 | ; If es|cape pre|
|000012f0| 73 73 65 64 2c 20 74 68 | 65 6e 20 62 72 61 6e 63 |ssed, th|en branc|
|00001300| 68 20 74 6f 20 63 6c 6f | 73 65 20 72 6f 75 74 69 |h to clo|se routi|
|00001310| 6e 65 0d 05 a0 10 42 43 | 53 20 20 20 20 63 6c 6f |ne....BC|S clo|
|00001320| 73 65 0d 05 aa 18 53 55 | 42 53 20 20 20 52 35 2c |se....SU|BS R5,|
|00001330| 20 52 35 2c 20 23 31 30 | 32 34 0d 05 b4 15 42 4e | R5, #10|24....BN|
|00001340| 45 20 20 20 20 77 72 69 | 74 65 5f 6c 6f 6f 70 0d |E wri|te_loop.|
|00001350| 05 be 0f 2e 65 78 69 74 | 5f 63 6c 65 61 6e 0d 05 |....exit|_clean..|
|00001360| c8 3d 41 44 52 20 20 20 | 20 52 30 2c 20 63 6c 65 |.=ADR | R0, cle|
|00001370| 61 6e 5f 74 65 78 74 20 | 20 20 20 20 20 20 20 3b |an_text | ;|
|00001380| 20 57 72 69 74 65 20 61 | 20 22 46 69 6e 69 73 68 | Write a| "Finish|
|00001390| 65 64 22 20 6d 65 73 73 | 61 67 65 0d 05 d2 17 53 |ed" mess|age....S|
|000013a0| 57 49 20 20 20 20 22 58 | 4f 53 5f 57 72 69 74 65 |WI "X|OS_Write|
|000013b0| 30 22 0d 05 dc 18 53 57 | 49 20 20 20 20 22 58 4f |0"....SW|I "XO|
|000013c0| 53 5f 4e 65 77 4c 69 6e | 65 22 0d 05 e6 0a 2e 63 |S_NewLin|e".....c|
|000013d0| 6c 6f 73 65 0d 05 f0 34 | 4d 4f 56 20 20 20 20 52 |lose...4|MOV R|
|000013e0| 30 2c 20 23 30 20 20 20 | 20 20 20 20 20 20 20 20 |0, #0 | |
|000013f0| 20 20 20 20 20 3b 20 43 | 6c 6f 73 65 20 66 69 6c | ; C|lose fil|
|00001400| 65 20 68 61 6e 64 6c 65 | 0d 05 fa 14 53 57 49 20 |e handle|....SWI |
|00001410| 20 20 20 22 4f 53 5f 46 | 69 6e 64 22 0d 06 04 0b | "OS_F|ind"....|
|00001420| 2e 64 65 6c 65 74 65 0d | 06 0e 32 4d 4f 56 20 20 |.delete.|..2MOV |
|00001430| 20 20 52 30 2c 20 23 36 | 20 20 20 20 20 20 20 20 | R0, #6| |
|00001440| 20 20 20 20 20 20 20 20 | 3b 20 44 65 6c 65 74 65 | |; Delete|
|00001450| 20 74 68 65 20 66 69 6c | 65 0d 06 18 18 41 44 52 | the fil|e....ADR|
|00001460| 20 20 20 20 52 31 2c 20 | 73 61 76 65 5f 74 65 78 | R1, |save_tex|
|00001470| 74 0d 06 22 14 53 57 49 | 20 20 20 20 22 4f 53 5f |t..".SWI| "OS_|
|00001480| 46 69 6c 65 22 0d 06 2c | 4b 4c 44 4d 46 44 20 20 |File"..,|KLDMFD |
|00001490| 28 73 70 29 21 2c 20 7b | 52 30 2d 52 31 32 2c 20 |(sp)!, {|R0-R12, |
|000014a0| 70 63 7d 20 20 20 3b 20 | 45 78 69 74 20 72 6f 75 |pc} ; |Exit rou|
|000014b0| 74 69 6e 65 2c 20 70 75 | 6c 6c 20 6c 69 6e 6b 20 |tine, pu|ll link |
|000014c0| 26 20 72 65 67 73 20 6f | 66 66 20 73 74 61 63 6b |& regs o|ff stack|
|000014d0| 0d 06 36 39 2e 63 6c 65 | 61 6e 5f 74 65 78 74 20 |..69.cle|an_text |
|000014e0| 45 51 55 53 20 22 44 72 | 69 76 65 20 6e 20 69 73 |EQUS "Dr|ive n is|
|000014f0| 20 6e 6f 77 20 63 6c 65 | 61 6e 2e 22 3a 45 51 55 | now cle|an.":EQU|
|00001500| 42 20 30 3a 41 4c 49 47 | 4e 0d 06 40 2d 2e 6f 73 |B 0:ALIG|N..@-.os|
|00001510| 63 6c 69 20 20 20 20 20 | 20 45 51 55 53 20 22 43 |cli | EQUS "C|
|00001520| 6f 6d 70 61 63 74 20 6e | 22 3a 45 51 55 42 20 30 |ompact n|":EQUB 0|
|00001530| 3a 41 4c 49 47 4e 0d 06 | 4a 36 2e 73 61 76 65 5f |:ALIGN..|J6.save_|
|00001540| 74 65 78 74 20 20 45 51 | 55 53 20 22 61 64 66 73 |text EQ|US "adfs|
|00001550| 3a 3a 6e 2e 24 2e 6e 75 | 6c 28 29 7a 7a 7a 22 3a |::n.$.nu|l()zzz":|
|00001560| 45 51 55 42 20 30 3a 41 | 4c 49 47 4e 0d 06 54 30 |EQUB 0:A|LIGN..T0|
|00001570| 2e 63 6f 6d 70 61 63 74 | 69 6e 67 20 45 51 55 53 |.compact|ing EQUS|
|00001580| 20 22 43 6f 6d 70 61 63 | 74 69 6e 67 2e 2e 22 3a | "Compac|ting..":|
|00001590| 45 51 55 42 20 30 3a 41 | 4c 49 47 4e 0d 06 5e 31 |EQUB 0:A|LIGN..^1|
|000015a0| 2e 63 6c 65 61 6e 69 6e | 67 20 20 20 45 51 55 53 |.cleanin|g EQUS|
|000015b0| 20 22 4e 6f 77 20 43 6c | 65 61 6e 69 6e 67 2e 22 | "Now Cl|eaning."|
|000015c0| 3a 45 51 55 42 20 30 3a | 41 4c 49 47 4e 0d 06 68 |:EQUB 0:|ALIGN..h|
|000015d0| 1d 2e 6d 65 73 73 61 67 | 65 20 20 20 20 45 51 55 |..messag|e EQU|
|000015e0| 44 20 26 33 38 37 46 44 | 34 34 0d 06 72 05 3a 0d |D &387FD|44..r.:.|
|000015f0| 06 7c 0f 2e 49 6e 69 74 | 69 61 6c 69 73 65 0d 06 |.|..Init|ialise..|
|00001600| 86 36 53 54 4d 46 44 20 | 20 28 73 70 29 21 2c 20 |.6STMFD | (sp)!, |
|00001610| 7b 6c 69 6e 6b 7d 20 20 | 20 20 20 20 20 20 20 3b |{link} | ;|
|00001620| 20 49 6e 69 74 69 61 6c | 69 73 61 74 69 6f 6e 20 | Initial|isation |
|00001630| 63 6f 64 65 0d 06 90 11 | 4d 4f 56 20 20 20 20 52 |code....|MOV R|
|00001640| 30 2c 20 23 38 0d 06 9a | 4f 4c 44 52 20 20 20 20 |0, #8...|OLDR |
|00001650| 52 30 2c 20 5b 52 30 5d | 20 20 20 20 20 20 20 20 |R0, [R0]| |
|00001660| 20 20 20 20 20 20 3b 20 | 4c 6f 61 64 20 64 61 74 | ; |Load dat|
|00001670| 61 20 61 74 20 30 38 20 | 28 62 72 61 6e 63 68 20 |a at 08 |(branch |
|00001680| 74 6f 20 53 57 49 20 68 | 61 6e 64 6c 65 72 20 63 |to SWI h|andler c|
|00001690| 6f 64 65 29 0d 06 a4 42 | 42 49 43 20 20 20 20 52 |ode)...B|BIC R|
|000016a0| 30 2c 20 52 30 2c 20 23 | 26 46 46 30 30 30 30 30 |0, R0, #|&FF00000|
|000016b0| 30 20 20 20 20 3b 20 4d | 61 73 6b 20 6f 75 74 20 |0 ; M|ask out |
|000016c0| 69 6e 73 74 72 75 63 74 | 69 6f 6e 20 69 64 65 6e |instruct|ion iden|
|000016d0| 74 69 66 69 65 72 0d 06 | ae 2c 4d 4f 56 20 20 20 |tifier..|.,MOV |
|000016e0| 20 52 30 2c 20 52 30 2c | 20 4c 53 4c 20 23 32 20 | R0, R0,| LSL #2 |
|000016f0| 20 20 20 20 20 20 20 3b | 20 28 2a 34 29 20 2b 20 | ;| (*4) + |
|00001700| 31 36 0d 06 b8 16 41 44 | 44 20 20 20 20 52 30 2c |16....AD|D R0,|
|00001710| 20 52 30 2c 20 23 31 36 | 0d 06 c2 44 53 54 52 20 | R0, #16|...DSTR |
|00001720| 20 20 20 52 30 2c 20 69 | 6e 73 74 72 20 20 20 20 | R0, i|nstr |
|00001730| 20 20 20 20 20 20 20 20 | 20 3b 20 53 74 6f 72 65 | | ; Store|
|00001740| 20 61 64 64 72 65 73 73 | 20 6f 66 20 68 61 6e 64 | address| of hand|
|00001750| 6c 65 72 20 61 74 20 6c | 61 62 65 6c 0d 06 cc 50 |ler at l|abel...P|
|00001760| 41 44 52 20 20 20 20 52 | 30 2c 20 66 69 6c 74 65 |ADR R|0, filte|
|00001770| 72 5f 53 57 49 20 20 20 | 20 20 20 20 20 3b 20 47 |r_SWI | ; G|
|00001780| 65 6e 65 72 61 74 65 20 | 61 20 73 69 6e 67 6c 65 |enerate |a single|
|00001790| 20 42 72 61 6e 63 68 20 | 69 6e 73 74 72 20 74 6f | Branch |instr to|
|000017a0| 20 6a 75 6d 70 20 74 6f | 20 6e 65 77 0d 06 d6 33 | jump to| new...3|
|000017b0| 53 55 42 20 20 20 20 52 | 30 2c 20 52 30 2c 20 23 |SUB R|0, R0, #|
|000017c0| 31 36 20 20 20 20 20 20 | 20 20 20 20 20 3b 20 53 |16 | ; S|
|000017d0| 57 49 20 68 61 6e 64 6c | 65 72 20 63 6f 64 65 0d |WI handl|er code.|
|000017e0| 06 e0 2c 4d 4f 56 20 20 | 20 20 52 30 2c 20 52 30 |..,MOV | R0, R0|
|000017f0| 2c 20 4c 53 52 20 23 32 | 20 20 20 20 20 20 20 20 |, LSR #2| |
|00001800| 3b 20 2d 20 31 36 20 28 | 2f 34 29 0d 06 ea 3f 84 |; - 16 (|/4)...?.|
|00001810| 52 20 20 20 20 52 30 2c | 20 52 30 2c 20 23 26 45 |R R0,| R0, #&E|
|00001820| 41 30 30 30 30 30 30 20 | 20 20 20 3b 20 41 64 64 |A000000 | ; Add|
|00001830| 20 6f 6e 20 69 6e 73 74 | 72 75 63 74 69 6f 6e 20 | on inst|ruction |
|00001840| 69 64 65 6e 74 69 66 69 | 65 72 0d 06 f4 11 4d 4f |identifi|er....MO|
|00001850| 56 20 20 20 20 52 31 2c | 20 23 38 0d 06 fe 53 53 |V R1,| #8...SS|
|00001860| 54 52 20 20 20 20 52 30 | 2c 20 5b 52 31 5d 20 20 |TR R0|, [R1] |
|00001870| 20 20 20 20 20 20 20 20 | 20 20 20 20 3b 20 53 61 | | ; Sa|
|00001880| 76 65 20 64 61 74 61 20 | 61 74 20 30 38 20 28 62 |ve data |at 08 (b|
|00001890| 72 61 6e 63 68 20 74 6f | 20 6e 65 77 20 53 57 49 |ranch to| new SWI|
|000018a0| 20 68 61 6e 64 6c 65 72 | 20 63 6f 64 65 29 0d 07 | handler| code)..|
|000018b0| 08 48 4c 44 4d 46 44 20 | 20 28 73 70 29 21 2c 20 |.HLDMFD | (sp)!, |
|000018c0| 7b 70 63 7d 20 20 20 20 | 20 20 20 20 20 20 20 3b |{pc} | ;|
|000018d0| 20 45 78 69 74 20 63 6f | 64 65 20 61 6e 64 20 70 | Exit co|de and p|
|000018e0| 75 6c 6c 20 6c 69 6e 6b | 20 6f 66 66 20 74 68 65 |ull link| off the|
|000018f0| 20 73 74 61 63 6b 0d 07 | 12 05 3a 0d 07 1c 0d 2e | stack..|..:.....|
|00001900| 46 69 6e 61 6c 69 73 65 | 0d 07 26 34 53 54 4d 46 |Finalise|..&4STMF|
|00001910| 44 20 20 28 73 70 29 21 | 2c 20 7b 6c 69 6e 6b 7d |D (sp)!|, {link}|
|00001920| 20 20 20 20 20 20 20 20 | 20 3b 20 46 69 6e 61 6c | | ; Final|
|00001930| 69 73 61 74 69 6f 6e 20 | 63 6f 64 65 0d 07 30 45 |isation |code..0E|
|00001940| 4c 44 52 20 20 20 20 52 | 30 2c 20 69 6e 73 74 72 |LDR R|0, instr|
|00001950| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 3b 20 4c | | ; L|
|00001960| 6f 61 64 20 61 64 64 72 | 65 73 73 20 6f 66 20 68 |oad addr|ess of h|
|00001970| 61 6e 64 6c 65 72 20 66 | 72 6f 6d 20 6c 61 62 65 |andler f|rom labe|
|00001980| 6c 0d 07 3a 33 53 55 42 | 20 20 20 20 52 30 2c 20 |l..:3SUB| R0, |
|00001990| 52 30 2c 20 23 31 36 20 | 20 20 20 20 20 20 20 20 |R0, #16 | |
|000019a0| 20 20 3b 20 53 57 49 20 | 68 61 6e 64 6c 65 72 20 | ; SWI |handler |
|000019b0| 63 6f 64 65 0d 07 44 2b | 4d 4f 56 20 20 20 20 52 |code..D+|MOV R|
|000019c0| 30 2c 20 52 30 2c 20 4c | 53 52 20 23 32 20 20 20 |0, R0, L|SR #2 |
|000019d0| 20 20 20 20 20 3b 20 2d | 31 36 20 28 2f 34 29 0d | ; -|16 (/4).|
|000019e0| 07 4e 3f 84 52 20 20 20 | 20 52 30 2c 20 52 30 2c |.N?.R | R0, R0,|
|000019f0| 20 23 26 45 41 30 30 30 | 30 30 30 20 20 20 20 3b | #&EA000|000 ;|
|00001a00| 20 41 64 64 20 6f 6e 20 | 69 6e 73 74 72 75 63 74 | Add on |instruct|
|00001a10| 69 6f 6e 20 69 64 65 6e | 74 69 66 69 65 72 0d 07 |ion iden|tifier..|
|00001a20| 58 11 4d 4f 56 20 20 20 | 20 52 31 2c 20 23 38 0d |X.MOV | R1, #8.|
|00001a30| 07 62 4f 53 54 52 20 20 | 20 20 52 30 2c 20 5b 52 |.bOSTR | R0, [R|
|00001a40| 31 5d 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |1] | |
|00001a50| 3b 20 53 61 76 65 20 64 | 61 74 61 20 61 74 20 30 |; Save d|ata at 0|
|00001a60| 38 20 28 62 72 61 6e 63 | 68 20 74 6f 20 53 57 49 |8 (branc|h to SWI|
|00001a70| 20 68 61 6e 64 6c 65 72 | 20 63 6f 64 65 29 0d 07 | handler| code)..|
|00001a80| 6c 48 4c 44 4d 46 44 20 | 20 28 73 70 29 21 2c 20 |lHLDMFD | (sp)!, |
|00001a90| 7b 70 63 7d 20 20 20 20 | 20 20 20 20 20 20 20 3b |{pc} | ;|
|00001aa0| 20 45 78 69 74 20 63 6f | 64 65 20 61 6e 64 20 70 | Exit co|de and p|
|00001ab0| 75 6c 6c 20 6c 69 6e 6b | 20 6f 66 66 20 74 68 65 |ull link| off the|
|00001ac0| 20 73 74 61 63 6b 0d 07 | 76 05 3a 0d 07 80 41 2e | stack..|v.:...A.|
|00001ad0| 69 6e 73 74 72 20 20 45 | 51 55 44 20 26 31 46 30 |instr E|QUD &1F0|
|00001ae0| 33 33 43 30 20 20 20 20 | 20 20 20 20 3b 20 41 64 |33C0 | ; Ad|
|00001af0| 64 72 65 73 73 20 6f 66 | 20 52 49 53 43 2d 4f 53 |dress of| RISC-OS|
|00001b00| 20 53 57 49 20 68 61 6e | 64 6c 65 72 0d 07 8a 44 | SWI han|dler...D|
|00001b10| 2e 64 72 69 76 65 73 20 | 45 51 55 42 20 30 20 20 |.drives |EQUB 0 |
|00001b20| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 3b 20 4c | | ; L|
|00001b30| 6f 63 6b 69 6e 67 20 73 | 79 73 74 65 6d 20 28 30 |ocking s|ystem (0|
|00001b40| 3d 87 2c 20 31 3d ee 2c | 20 32 3d b8 54 41 4c 29 |=., 1=.,| 2=.TAL)|
|00001b50| 0d 07 94 05 3a 0d 07 9e | 53 3b 20 2a 2a 2a 2a 2a |....:...|S; *****|
|00001b60| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001b70| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001b80| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001b90| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001ba0| 2a 2a 2a 2a 2a 2a 2a 2a | 0d 07 a8 51 3b 20 53 6f |********|...Q; So|
|00001bb0| 6d 65 20 72 6f 75 74 69 | 6e 65 73 20 74 68 61 74 |me routi|nes that|
|00001bc0| 20 69 6e 74 65 72 63 65 | 70 74 20 61 6c 6c 20 46 | interce|pt all F|
|00001bd0| 69 6c 65 43 6f 72 65 5f | 44 69 73 63 4f 70 20 63 |ileCore_|DiscOp c|
|00001be0| 61 6c 6c 73 20 61 6e 64 | 20 66 69 6c 74 65 72 20 |alls and| filter |
|00001bf0| 6f 75 74 20 63 61 6c 6c | 73 0d 07 b2 4b 3b 20 74 |out call|s...K; t|
|00001c00| 68 61 74 20 77 72 69 74 | 65 20 74 6f 20 41 44 46 |hat writ|e to ADF|
|00001c10| 53 20 44 72 69 76 65 73 | 2e 20 41 6c 73 6f 20 73 |S Drives|. Also s|
|00001c20| 74 6f 70 73 20 4f 53 5f | 46 53 43 6f 6e 74 72 6f |tops OS_|FSContro|
|00001c30| 6c 20 32 37 20 28 57 69 | 70 65 20 6f 62 6a 65 63 |l 27 (Wi|pe objec|
|00001c40| 74 73 29 2e 0d 07 bc 53 | 3b 20 2a 2a 2a 2a 2a 2a |ts)....S|; ******|
|00001c50| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001c60| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001c70| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001c80| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001c90| 2a 2a 2a 2a 2a 2a 2a 0d | 07 c6 53 3b 20 4d 6f 64 |*******.|..S; Mod|
|00001ca0| 69 66 69 65 64 20 20 31 | 32 74 68 20 41 70 72 69 |ified 1|2th Apri|
|00001cb0| 6c 20 31 39 39 30 20 2d | 20 4e 6f 77 20 70 72 6f |l 1990 -| Now pro|
|00001cc0| 76 69 64 65 73 20 74 6f | 74 61 6c 20 20 77 72 69 |vides to|tal wri|
|00001cd0| 74 65 2d 70 72 6f 74 65 | 63 74 69 6f 6e 20 62 79 |te-prote|ction by|
|00001ce0| 20 66 69 6c 74 65 72 69 | 6e 67 0d 07 d0 43 3b 20 | filteri|ng...C; |
|00001cf0| 63 65 72 74 61 69 6e 20 | 4f 53 5f 46 69 6c 65 20 |certain |OS_File |
|00001d00| 28 30 2d 34 2c 20 36 2d | 31 31 20 26 20 31 38 29 |(0-4, 6-|11 & 18)|
|00001d10| 20 63 61 6c 6c 73 20 61 | 6e 64 20 61 6c 6c 20 4f | calls a|nd all O|
|00001d20| 53 5f 46 69 6e 64 20 63 | 61 6c 6c 73 2e 0d 07 da |S_Find c|alls....|
|00001d30| 3b 3b 20 41 6c 73 6f 20 | 66 69 6c 74 65 72 73 20 |;; Also |filters |
|00001d40| 6f 75 74 20 33 20 6e 65 | 77 20 4f 53 5f 46 53 43 |out 3 ne|w OS_FSC|
|00001d50| 6f 6e 74 72 6f 6c 20 63 | 61 6c 6c 73 20 28 32 34 |ontrol c|alls (24|
|00001d60| 2c 32 35 2c 32 36 29 2e | 0d 07 e4 53 3b 20 2a 2a |,25,26).|...S; **|
|00001d70| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001d80| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001d90| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001da0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001db0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 0d 07 ee 05 3a |********|***....:|
|00001dc0| 0d 07 f8 15 42 20 20 20 | 20 20 20 66 69 6c 74 65 |....B | filte|
|00001dd0| 72 5f 53 57 49 0d 08 02 | 53 2e 66 69 6c 74 65 72 |r_SWI...|S.filter|
|00001de0| 5f 53 57 49 20 20 20 20 | 20 20 20 20 20 20 20 20 |_SWI | |
|00001df0| 20 20 20 20 20 20 3b 20 | 43 6f 64 65 20 72 65 70 | ; |Code rep|
|00001e00| 6c 61 63 65 73 20 52 49 | 53 43 4f 53 20 63 6f 64 |laces RI|SCOS cod|
|00001e10| 65 20 74 68 61 74 20 68 | 61 6e 64 6c 65 73 20 74 |e that h|andles t|
|00001e20| 68 65 20 53 57 49 27 73 | 0d 08 0c 3a 53 54 4d 46 |he SWI's|...:STMF|
|00001e30| 44 20 20 52 31 33 21 2c | 20 7b 52 31 30 2d 52 31 |D R13!,| {R10-R1|
|00001e40| 32 7d 20 20 20 20 20 20 | 20 3b 20 53 61 76 65 20 |2} | ; Save |
|00001e50| 72 65 67 69 73 74 65 72 | 73 20 74 6f 20 73 74 61 |register|s to sta|
|00001e60| 63 6b 0d 08 16 52 42 49 | 43 20 20 20 20 52 31 32 |ck...RBI|C R12|
|00001e70| 2c 20 52 31 34 2c 20 23 | 26 46 43 30 30 30 30 30 |, R14, #|&FC00000|
|00001e80| 33 20 20 3b 20 43 6c 65 | 61 72 20 66 6c 61 67 73 |3 ; Cle|ar flags|
|00001e90| 20 66 72 6f 6d 20 52 31 | 34 5f 73 76 63 20 74 6f | from R1|4_svc to|
|00001ea0| 20 67 69 76 65 20 61 64 | 64 72 65 73 73 20 6f 66 | give ad|dress of|
|00001eb0| 20 53 57 49 0d 08 20 44 | 4c 44 52 20 20 20 20 52 | SWI.. D|LDR R|
|00001ec0| 31 31 2c 20 5b 52 31 32 | 2c 20 23 2d 34 5d 20 20 |11, [R12|, #-4] |
|00001ed0| 20 20 20 20 20 3b 20 4c | 6f 61 64 20 52 31 31 20 | ; L|oad R11 |
|00001ee0| 77 69 74 68 20 74 68 65 | 20 61 63 74 75 61 6c 20 |with the| actual |
|00001ef0| 53 57 49 20 77 6f 72 64 | 0d 08 2a 46 4c 44 52 20 |SWI word|..*FLDR |
|00001f00| 20 20 20 52 31 30 2c 20 | 63 6f 6e 73 74 20 20 20 | R10, |const |
|00001f10| 20 20 20 20 20 20 20 20 | 20 3b 20 4c 6f 61 64 20 | | ; Load |
|00001f20| 69 6e 20 61 20 63 6f 6e | 73 74 61 6e 74 20 74 6f |in a con|stant to|
|00001f30| 20 6d 61 73 6b 20 52 31 | 31 20 77 69 74 68 0d 08 | mask R1|1 with..|
|00001f40| 34 3f 42 49 43 20 20 20 | 20 52 31 31 2c 20 52 31 |4?BIC | R11, R1|
|00001f50| 31 2c 20 52 31 30 20 20 | 20 20 20 20 20 20 20 3b |1, R10 | ;|
|00001f60| 20 4d 61 73 6b 20 6f 75 | 74 20 75 6e 77 61 6e 74 | Mask ou|t unwant|
|00001f70| 65 64 20 62 69 74 73 20 | 33 31 2d 31 37 0d 08 3e |ed bits |31-17..>|
|00001f80| 18 4c 44 52 20 20 20 20 | 52 31 30 2c 20 66 69 6c |.LDR |R10, fil|
|00001f90| 65 63 6f 72 65 0d 08 48 | 52 54 45 51 20 20 20 20 |ecore..H|RTEQ |
|00001fa0| 52 31 31 2c 20 52 31 30 | 20 20 20 20 20 20 20 20 |R11, R10| |
|00001fb0| 20 20 20 20 20 20 3b 20 | 49 66 20 63 61 6c 6c 20 | ; |If call |
|00001fc0| 69 73 20 61 20 46 69 6c | 65 43 6f 72 65 5f 44 69 |is a Fil|eCore_Di|
|00001fd0| 73 63 4f 70 2c 20 74 68 | 65 6e 20 6a 75 6d 70 20 |scOp, th|en jump |
|00001fe0| 74 6f 20 63 6f 64 65 0d | 08 52 11 42 45 51 20 20 |to code.|.R.BEQ |
|00001ff0| 20 20 64 69 73 63 6f 70 | 0d 08 5c 45 54 45 51 20 | discop|..\ETEQ |
|00002000| 20 20 20 52 31 31 2c 20 | 23 26 32 39 20 20 20 20 | R11, |#&29 |
|00002010| 20 20 20 20 20 20 20 20 | 20 3b 20 49 66 20 63 61 | | ; If ca|
|00002020| 6c 6c 20 69 73 20 61 6e | 20 4f 53 5f 46 53 43 6f |ll is an| OS_FSCo|
|00002030| 6e 74 72 6f 6c 2c 20 6f | 72 20 2e 2e 2e 0d 08 66 |ntrol, o|r .....f|
|00002040| 41 54 45 51 4e 45 20 20 | 52 31 31 2c 20 23 26 30 |ATEQNE |R11, #&0|
|00002050| 38 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 20 |8 | ; |
|00002060| 2e 2e 2e 20 63 61 6c 6c | 20 69 73 20 61 6e 20 4f |... call| is an O|
|00002070| 53 5f 46 69 6c 65 2c 20 | 6f 72 20 2e 2e 2e 0d 08 |S_File, |or .....|
|00002080| 70 39 54 45 51 4e 45 20 | 20 52 31 31 2c 20 23 26 |p9TEQNE | R11, #&|
|00002090| 30 44 20 20 20 20 20 20 | 20 20 20 20 20 20 20 3b |0D | ;|
|000020a0| 20 2e 2e 2e 20 63 61 6c | 6c 20 69 73 20 61 6e 20 | ... cal|l is an |
|000020b0| 4f 53 5f 46 69 6e 64 0d | 08 7a 3c 42 45 51 20 20 |OS_Find.|.z<BEQ |
|000020c0| 20 20 66 69 6c 74 65 72 | 5f 6f 70 20 20 20 20 20 | filter|_op |
|000020d0| 20 20 20 20 20 20 20 20 | 3b 20 74 68 65 6e 20 63 | |; then c|
|000020e0| 61 6c 6c 20 74 68 65 20 | 66 69 6c 74 65 72 20 63 |all the |filter c|
|000020f0| 6f 64 65 0d 08 84 0c 2e | 72 6f 75 74 69 6e 65 0d |ode.....|routine.|
|00002100| 08 8e 50 4c 44 4d 46 44 | 20 20 52 31 33 21 2c 20 |..PLDMFD| R13!, |
|00002110| 7b 52 31 30 2d 52 31 32 | 7d 20 20 20 20 20 20 20 |{R10-R12|} |
|00002120| 3b 20 52 65 73 74 6f 72 | 65 20 72 65 67 69 73 74 |; Restor|e regist|
|00002130| 65 72 73 20 26 20 63 61 | 6c 6c 20 70 72 65 76 69 |ers & ca|ll previ|
|00002140| 6f 75 73 20 53 57 49 20 | 68 61 6e 64 6c 65 72 0d |ous SWI |handler.|
|00002150| 08 98 14 4c 44 52 20 20 | 20 20 50 43 2c 20 69 6e |...LDR | PC, in|
|00002160| 73 74 72 0d 08 a2 05 3a | 0d 08 ac 32 2e 66 69 6c |str....:|...2.fil|
|00002170| 74 65 72 5f 6f 70 20 20 | 20 20 20 20 20 20 20 20 |ter_op | |
|00002180| 20 20 20 20 20 20 20 20 | 20 3b 20 53 57 49 20 46 | | ; SWI F|
|00002190| 69 6c 74 65 72 20 63 6f | 64 65 0d 08 b6 50 4c 44 |ilter co|de...PLD|
|000021a0| 52 42 20 20 20 52 31 32 | 2c 20 64 72 69 76 65 73 |RB R12|, drives|
|000021b0| 20 20 20 20 20 20 20 20 | 20 20 20 3b 20 49 66 20 | | ; If |
|000021c0| 4c 6f 63 6b 20 73 77 69 | 74 63 68 65 64 20 87 20 |Lock swi|tched . |
|000021d0| 74 68 65 6e 20 63 61 6c | 6c 20 70 72 65 76 69 6f |then cal|l previo|
|000021e0| 75 73 20 68 61 6e 64 6c | 65 72 0d 08 c0 3a 54 45 |us handl|er...:TE|
|000021f0| 51 20 20 20 20 52 31 31 | 2c 20 23 26 32 39 20 20 |Q R11|, #&29 |
|00002200| 20 20 20 20 20 20 20 20 | 20 20 20 3b 20 43 68 65 | | ; Che|
|00002210| 63 6b 73 20 66 6f 72 20 | 4f 53 5f 46 53 43 6f 6e |cks for |OS_FSCon|
|00002220| 74 72 6f 6c 0d 08 ca 14 | 42 4e 45 20 20 20 20 6d |trol....|BNE m|
|00002230| 69 6e 69 5f 6a 75 6d 70 | 0d 08 d4 4b 54 45 51 20 |ini_jump|...KTEQ |
|00002240| 20 20 20 52 30 2c 20 23 | 32 37 20 20 20 20 20 20 | R0, #|27 |
|00002250| 20 20 20 20 20 20 20 20 | 20 3b 20 43 68 65 63 6b | | ; Check|
|00002260| 73 20 66 6f 72 20 72 65 | 61 73 6f 6e 20 63 6f 64 |s for re|ason cod|
|00002270| 65 20 32 37 20 28 57 69 | 70 65 20 4f 62 6a 65 63 |e 27 (Wi|pe Objec|
|00002280| 74 73 29 0d 08 de 0f 42 | 45 51 20 20 20 20 6a 75 |ts)....B|EQ ju|
|00002290| 6d 70 0d 08 e8 12 54 45 | 51 20 20 20 20 52 31 32 |mp....TE|Q R12|
|000022a0| 2c 20 23 32 0d 08 f2 12 | 42 4e 45 20 20 20 20 72 |, #2....|BNE r|
|000022b0| 6f 75 74 69 6e 65 0d 08 | fc 4d 54 45 51 20 20 20 |outine..|.MTEQ |
|000022c0| 20 52 30 2c 20 23 32 34 | 20 20 20 20 20 20 20 20 | R0, #24| |
|000022d0| 20 20 20 20 20 20 20 3b | 20 43 68 65 63 6b 73 20 | ;| Checks |
|000022e0| 66 6f 72 20 72 65 61 73 | 6f 6e 20 63 6f 64 65 20 |for reas|on code |
|000022f0| 32 34 20 28 53 65 74 20 | 41 74 74 72 69 62 75 74 |24 (Set |Attribut|
|00002300| 65 73 29 0d 09 06 4d 54 | 45 51 4e 45 20 20 52 30 |es)...MT|EQNE R0|
|00002310| 2c 20 23 32 35 20 20 20 | 20 20 20 20 20 20 20 20 |, #25 | |
|00002320| 20 20 20 20 3b 20 43 68 | 65 63 6b 73 20 66 6f 72 | ; Ch|ecks for|
|00002330| 20 72 65 61 73 6f 6e 20 | 63 6f 64 65 20 32 35 20 | reason |code 25 |
|00002340| 28 52 65 6e 61 6d 65 20 | 4f 62 6a 65 63 74 73 29 |(Rename |Objects)|
|00002350| 0d 09 10 4b 54 45 51 4e | 45 20 20 52 30 2c 20 23 |...KTEQN|E R0, #|
|00002360| 32 36 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |26 | |
|00002370| 20 3b 20 43 68 65 63 6b | 73 20 66 6f 72 20 72 65 | ; Check|s for re|
|00002380| 61 73 6f 6e 20 63 6f 64 | 65 20 32 36 20 28 43 6f |ason cod|e 26 (Co|
|00002390| 70 79 20 4f 62 6a 65 63 | 74 73 29 0d 09 1a 0f 42 |py Objec|ts)....B|
|000023a0| 45 51 20 20 20 20 6a 75 | 6d 70 0d 09 24 12 42 4e |EQ ju|mp..$.BN|
|000023b0| 45 20 20 20 20 72 6f 75 | 74 69 6e 65 0d 09 2e 0e |E rou|tine....|
|000023c0| 2e 6d 69 6e 69 5f 6a 75 | 6d 70 0d 09 38 12 43 4d |.mini_ju|mp..8.CM|
|000023d0| 50 20 20 20 20 52 31 32 | 2c 20 23 32 0d 09 42 12 |P R12|, #2..B.|
|000023e0| 42 4e 45 20 20 20 20 72 | 6f 75 74 69 6e 65 0d 09 |BNE r|outine..|
|000023f0| 4c 3e 54 45 51 20 20 20 | 20 52 31 31 2c 20 23 26 |L>TEQ | R11, #&|
|00002400| 30 44 20 20 20 20 20 20 | 20 20 20 20 20 20 20 3b |0D | ;|
|00002410| 20 43 68 65 63 6b 20 66 | 6f 72 20 61 6e 79 20 4f | Check f|or any O|
|00002420| 53 5f 46 69 6e 64 20 63 | 61 6c 6c 73 0d 09 56 15 |S_Find c|alls..V.|
|00002430| 42 4e 45 20 20 20 20 6e | 6f 74 5f 6f 73 66 69 6e |BNE n|ot_osfin|
|00002440| 64 0d 09 60 12 54 53 54 | 20 20 20 20 52 30 2c 23 |d..`.TST| R0,#|
|00002450| 26 38 30 0d 09 6a 0f 42 | 4e 45 20 20 20 20 6a 75 |&80..j.B|NE ju|
|00002460| 6d 70 0d 09 6b 12 42 45 | 51 20 20 20 20 72 6f 75 |mp..k.BE|Q rou|
|00002470| 74 69 6e 65 0d 09 74 0f | 2e 6e 6f 74 5f 6f 73 66 |tine..t.|.not_osf|
|00002480| 69 6e 64 0d 09 7e 51 54 | 45 51 20 20 20 20 52 30 |ind..~QT|EQ R0|
|00002490| 2c 20 23 30 20 20 20 20 | 20 20 20 20 20 20 20 20 |, #0 | |
|000024a0| 20 20 20 20 3b 20 43 68 | 65 63 6b 20 66 6f 72 20 | ; Ch|eck for |
|000024b0| 4f 53 5f 46 69 6c 65 20 | 63 61 6c 6c 73 2c 20 28 |OS_File |calls, (|
|000024c0| 53 61 76 65 20 6d 65 6d | 6f 72 79 20 74 6f 20 66 |Save mem|ory to f|
|000024d0| 69 6c 65 29 0d 09 88 4c | 54 45 51 4e 45 20 20 52 |ile)...L|TEQNE R|
|000024e0| 30 2c 20 23 31 20 20 20 | 20 20 20 20 20 20 20 20 |0, #1 | |
|000024f0| 20 20 20 20 20 3b 20 20 | 20 20 20 20 20 20 20 20 | ; | |
|00002500| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002510| 28 57 72 69 74 65 20 63 | 61 74 20 69 6e 66 6f 29 |(Write c|at info)|
|00002520| 0d 09 92 4d 54 45 51 4e | 45 20 20 52 30 2c 20 23 |...MTEQN|E R0, #|
|00002530| 32 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |2 | |
|00002540| 20 3b 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | ; | |
|00002550| 20 20 20 20 20 20 20 20 | 20 20 20 20 28 57 72 69 | | (Wri|
|00002560| 74 65 20 6c 6f 61 64 20 | 61 64 64 72 29 0d 09 9c |te load |addr)...|
|00002570| 4d 54 45 51 4e 45 20 20 | 52 30 2c 20 23 33 20 20 |MTEQNE |R0, #3 |
|00002580| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 20 | | ; |
|00002590| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000025a0| 20 20 20 20 20 20 20 20 | 20 28 57 72 69 74 65 20 | | (Write |
|000025b0| 65 78 65 63 20 61 64 64 | 72 29 0d 09 a6 4f 54 45 |exec add|r)...OTE|
|000025c0| 51 4e 45 20 20 52 30 2c | 20 23 34 20 20 20 20 20 |QNE R0,| #4 |
|000025d0| 20 20 20 20 20 20 20 20 | 20 20 20 3b 20 20 20 20 | | ; |
|000025e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000025f0| 20 20 20 20 20 20 28 57 | 72 69 74 65 20 61 74 74 | (W|rite att|
|00002600| 72 69 62 20 64 61 74 61 | 29 0d 09 b0 4b 54 45 51 |rib data|)...KTEQ|
|00002610| 4e 45 20 20 52 30 2c 20 | 23 36 20 20 20 20 20 20 |NE R0, |#6 |
|00002620| 20 20 20 20 20 20 20 20 | 20 20 3b 20 20 20 20 20 | | ; |
|00002630| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002640| 20 20 20 20 20 28 44 65 | 6c 65 74 65 20 6f 62 6a | (De|lete obj|
|00002650| 65 63 74 29 0d 09 ba 49 | 54 45 51 4e 45 20 20 52 |ect)...I|TEQNE R|
|00002660| 30 2c 20 23 37 20 20 20 | 20 20 20 20 20 20 20 20 |0, #7 | |
|00002670| 20 20 20 20 20 3b 20 20 | 20 20 20 20 20 20 20 20 | ; | |
|00002680| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002690| 28 43 72 65 61 74 65 20 | 66 69 6c 65 29 0d 09 c4 |(Create |file)...|
|000026a0| 48 54 45 51 4e 45 20 20 | 52 30 2c 20 23 38 20 20 |HTEQNE |R0, #8 |
|000026b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 20 | | ; |
|000026c0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000026d0| 20 20 20 20 20 20 20 20 | 20 28 43 72 65 61 74 65 | | (Create|
|000026e0| 20 64 69 72 29 0d 09 ce | 53 54 45 51 4e 45 20 20 | dir)...|STEQNE |
|000026f0| 52 30 2c 20 23 39 20 20 | 20 20 20 20 20 20 20 20 |R0, #9 | |
|00002700| 20 20 20 20 20 20 3b 20 | 20 20 20 20 20 20 20 20 | ; | |
|00002710| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002720| 20 28 57 72 69 74 65 20 | 64 61 74 65 2f 74 69 6d | (Write |date/tim|
|00002730| 65 20 73 74 61 6d 70 29 | 0d 09 d8 4f 54 45 51 4e |e stamp)|...OTEQN|
|00002740| 45 20 20 52 30 2c 20 23 | 31 30 20 20 20 20 20 20 |E R0, #|10 |
|00002750| 20 20 20 20 20 20 20 20 | 20 3b 20 20 20 20 20 20 | | ; |
|00002760| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002770| 20 20 20 20 28 53 61 76 | 65 20 26 20 73 74 61 6d | (Sav|e & stam|
|00002780| 70 20 66 69 6c 65 29 0d | 09 e2 51 54 45 51 4e 45 |p file).|..QTEQNE|
|00002790| 20 20 52 30 2c 20 23 31 | 31 20 20 20 20 20 20 20 | R0, #1|1 |
|000027a0| 20 20 20 20 20 20 20 20 | 3b 20 20 20 20 20 20 20 | |; |
|000027b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000027c0| 20 20 20 28 43 72 65 61 | 74 65 20 26 20 73 74 61 | (Crea|te & sta|
|000027d0| 6d 70 20 66 69 6c 65 29 | 0d 09 ec 4f 54 45 51 4e |mp file)|...OTEQN|
|000027e0| 45 20 20 52 30 2c 20 23 | 31 38 20 20 20 20 20 20 |E R0, #|18 |
|000027f0| 20 20 20 20 20 20 20 20 | 20 3b 20 20 20 20 20 20 | | ; |
|00002800| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002810| 20 20 20 20 28 53 65 74 | 74 79 70 65 20 6f 66 20 | (Set|type of |
|00002820| 61 20 66 69 6c 65 29 0d | 09 f6 0f 42 45 51 20 20 |a file).|...BEQ |
|00002830| 20 20 6a 75 6d 70 0d 0a | 00 12 42 4e 45 20 20 20 | jump..|..BNE |
|00002840| 20 72 6f 75 74 69 6e 65 | 0d 0a 0a 50 2e 64 69 73 | routine|...P.dis|
|00002850| 63 6f 70 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |cop | |
|00002860| 20 20 20 20 20 20 20 20 | 20 3b 20 43 68 65 63 6b | | ; Check|
|00002870| 73 20 66 6f 72 20 28 52 | 31 20 80 20 31 35 29 20 |s for (R|1 . 15) |
|00002880| 3d 20 32 2c 20 34 20 28 | 46 69 6c 65 43 6f 72 65 |= 2, 4 (|FileCore|
|00002890| 5f 44 69 73 63 4f 70 29 | 0d 0a 14 18 80 20 20 20 |_DiscOp)|..... |
|000028a0| 20 52 31 31 2c 20 52 31 | 2c 20 23 25 31 31 31 31 | R11, R1|, #%1111|
|000028b0| 0d 0a 1e 12 54 45 51 20 | 20 20 20 52 31 31 2c 20 |....TEQ | R11, |
|000028c0| 23 32 0d 0a 28 12 54 45 | 51 4e 45 20 20 52 31 31 |#2..(.TE|QNE R11|
|000028d0| 2c 20 23 34 0d 0a 32 12 | 42 4e 45 20 20 20 20 72 |, #4..2.|BNE r|
|000028e0| 6f 75 74 69 6e 65 0d 0a | 3c 09 2e 6a 75 6d 70 0d |outine..|<..jump.|
|000028f0| 0a 46 50 4c 44 52 42 20 | 20 20 52 31 32 2c 20 64 |.FPLDRB | R12, d|
|00002900| 72 69 76 65 73 20 20 20 | 20 20 20 20 20 20 20 20 |rives | |
|00002910| 3b 20 49 66 20 4c 6f 63 | 6b 20 73 77 69 74 63 68 |; If Loc|k switch|
|00002920| 65 64 20 87 20 74 68 65 | 6e 20 63 61 6c 6c 20 70 |ed . the|n call p|
|00002930| 72 65 76 69 6f 75 73 20 | 68 61 6e 64 6c 65 72 0d |revious |handler.|
|00002940| 0a 50 12 54 45 51 20 20 | 20 20 52 31 32 2c 20 23 |.P.TEQ | R12, #|
|00002950| 30 0d 0a 5a 12 42 45 51 | 20 20 20 20 72 6f 75 74 |0..Z.BEQ| rout|
|00002960| 69 6e 65 0d 0a 64 40 42 | 49 43 20 20 20 20 52 31 |ine..d@B|IC R1|
|00002970| 32 2c 20 52 31 34 2c 20 | 23 26 46 43 30 30 30 30 |2, R14, |#&FC0000|
|00002980| 30 33 20 20 3b 20 4c 6f | 61 64 20 52 31 31 20 77 |03 ; Lo|ad R11 w|
|00002990| 69 74 68 20 53 57 49 20 | 69 6e 73 74 72 75 63 74 |ith SWI |instruct|
|000029a0| 69 6f 6e 0d 0a 6e 1a 4c | 44 52 20 20 20 20 52 31 |ion..n.L|DR R1|
|000029b0| 31 2c 20 5b 52 31 32 2c | 20 23 2d 34 5d 0d 0a 78 |1, [R12,| #-4]..x|
|000029c0| 52 54 53 54 20 20 20 20 | 52 31 31 2c 20 23 28 31 |RTST |R11, #(1|
|000029d0| 3c 3c 31 37 29 20 20 20 | 20 20 20 20 20 20 3b 20 |<<17) | ; |
|000029e0| 54 65 73 74 20 66 6f 72 | 20 62 69 74 20 31 37 20 |Test for| bit 17 |
|000029f0| 73 65 74 20 28 45 72 72 | 6f 72 2f 4e 6f 6e 2d 65 |set (Err|or/Non-e|
|00002a00| 72 72 6f 72 20 72 65 74 | 75 72 6e 69 6e 67 29 0d |rror ret|urning).|
|00002a10| 0a 82 19 42 45 51 20 20 | 20 20 67 65 6e 65 72 61 |...BEQ | genera|
|00002a20| 74 65 5f 65 72 72 6f 72 | 0d 0a 8c 48 4c 44 4d 46 |te_error|...HLDMF|
|00002a30| 44 20 20 52 31 33 21 2c | 20 7b 52 31 30 2d 52 31 |D R13!,| {R10-R1|
|00002a40| 32 7d 20 20 20 20 20 20 | 20 3b 20 54 68 69 73 20 |2} | ; This |
|00002a50| 69 73 20 61 6e 20 58 2d | 70 72 65 66 69 78 65 64 |is an X-|prefixed|
|00002a60| 20 53 57 49 20 28 6e 6f | 6e 2d 65 72 72 6f 72 29 | SWI (no|n-error)|
|00002a70| 0d 0a 96 17 41 44 52 20 | 20 20 20 52 30 2c 20 65 |....ADR | R0, e|
|00002a80| 72 72 42 6c 6f 63 6b 0d | 0a a0 44 84 52 53 20 20 |rrBlock.|..D.RS |
|00002a90| 20 52 31 35 2c 20 52 31 | 34 2c 20 23 28 31 3c 3c | R15, R1|4, #(1<<|
|00002aa0| 32 38 29 20 20 20 20 3b | 20 52 65 74 75 72 6e 20 |28) ;| Return |
|00002ab0| 77 69 74 68 20 65 72 72 | 6f 72 20 27 50 72 6f 74 |with err|or 'Prot|
|00002ac0| 65 63 74 65 64 20 64 69 | 73 63 27 0d 0a aa 05 3a |ected di|sc'....:|
|00002ad0| 0d 0a b4 13 2e 67 65 6e | 65 72 61 74 65 5f 65 72 |.....gen|erate_er|
|00002ae0| 72 6f 72 0d 0a be 50 41 | 44 52 20 20 20 20 52 30 |ror...PA|DR R0|
|00002af0| 2c 20 65 72 72 42 6c 6f | 63 6b 20 20 20 20 20 20 |, errBlo|ck |
|00002b00| 20 20 20 20 3b 20 47 65 | 6e 65 72 61 74 65 20 61 | ; Ge|nerate a|
|00002b10| 20 73 65 72 76 69 63 65 | 20 63 61 6c 6c 20 74 6f | service| call to|
|00002b20| 20 69 6e 66 6f 72 6d 20 | 4f 53 20 6f 66 20 65 72 | inform |OS of er|
|00002b30| 72 6f 72 0d 0a c8 11 4d | 4f 56 20 20 20 20 52 31 |ror....M|OV R1|
|00002b40| 2c 20 23 36 0d 0a d2 1b | 53 57 49 20 20 20 20 22 |, #6....|SWI "|
|00002b50| 4f 53 5f 53 65 72 76 69 | 63 65 43 61 6c 6c 22 0d |OS_Servi|ceCall".|
|00002b60| 0a dc 38 41 44 52 20 20 | 20 20 52 30 2c 20 65 72 |..8ADR | R0, er|
|00002b70| 72 42 6c 6f 63 6b 20 20 | 20 20 20 20 20 20 20 20 |rBlock | |
|00002b80| 3b 20 43 61 6c 6c 20 65 | 72 72 6f 72 20 76 65 63 |; Call e|rror vec|
|00002b90| 74 6f 72 20 28 31 29 0d | 0a e6 11 4d 4f 56 20 20 |tor (1).|...MOV |
|00002ba0| 20 20 52 39 2c 20 23 31 | 0d 0a f0 1b 53 57 49 20 | R9, #1|....SWI |
|00002bb0| 20 20 20 22 4f 53 5f 43 | 61 6c 6c 41 56 65 63 74 | "OS_C|allAVect|
|00002bc0| 6f 72 22 0d 0a fa 34 4c | 44 4d 46 44 20 20 52 31 |or"...4L|DMFD R1|
|00002bd0| 33 21 2c 20 7b 52 31 30 | 2d 52 31 32 7d 20 20 20 |3!, {R10|-R12} |
|00002be0| 20 20 20 20 3b 20 52 65 | 73 74 6f 72 65 20 72 65 | ; Re|store re|
|00002bf0| 67 69 73 74 65 72 73 0d | 0b 04 39 4d 4f 56 53 20 |gisters.|..9MOVS |
|00002c00| 20 20 50 43 2c 20 52 31 | 34 20 20 20 20 20 20 20 | PC, R1|4 |
|00002c10| 20 20 20 20 20 20 20 20 | 3b 20 52 65 74 75 72 6e | |; Return|
|00002c20| 20 74 6f 20 75 73 65 72 | 20 70 72 6f 67 72 61 6d | to user| program|
|00002c30| 0d 0b 0e 05 3a 0d 0b 18 | 1d 2e 63 6f 6e 73 74 20 |....:...|..const |
|00002c40| 20 20 20 20 45 51 55 44 | 20 26 46 46 46 32 30 30 | EQUD| &FFF200|
|00002c50| 30 30 0d 0b 22 1a 2e 66 | 69 6c 65 63 6f 72 65 20 |00.."..f|ilecore |
|00002c60| 20 45 51 55 44 20 26 34 | 30 35 34 30 0d 0b 2c 1a | EQUD &4|0540..,.|
|00002c70| 2e 65 72 72 42 6c 6f 63 | 6b 20 20 45 51 55 44 20 |.errBloc|k EQUD |
|00002c80| 26 31 30 38 43 39 0d 0b | 36 31 20 20 20 20 20 20 |&108C9..|61 |
|00002c90| 20 20 20 20 20 45 51 55 | 53 20 22 50 72 6f 74 65 | EQU|S "Prote|
|00002ca0| 63 74 65 64 20 64 69 73 | 63 22 3a 45 51 55 42 20 |cted dis|c":EQUB |
|00002cb0| 30 3a 41 4c 49 47 4e 0d | 0b 40 05 3a 0d 0b 4a 05 |0:ALIGN.|.@.:..J.|
|00002cc0| 5d 0d 0b 54 0b ed 20 70 | 61 73 73 25 0d 0b 5e 05 |]..T.. p|ass%..^.|
|00002cd0| 3a 0d 0b 68 13 6e 61 6d | 65 24 3d 22 57 61 74 63 |:..h.nam|e$="Watc|
|00002ce0| 68 52 4d 22 0d 0b 72 28 | c8 99 20 22 4f 53 5f 46 |hRM"..r(|.. "OS_F|
|00002cf0| 69 6c 65 22 2c 31 30 2c | 6e 61 6d 65 24 2c 26 46 |ile",10,|name$,&F|
|00002d00| 46 41 2c 2c 63 6f 64 65 | 25 2c 4f 25 0d 0b 7c 23 |FA,,code|%,O%..|#|
|00002d10| f1 27 22 4d 6f 64 75 6c | 65 20 53 61 76 65 64 20 |.'"Modul|e Saved |
|00002d20| 61 73 20 27 22 6e 61 6d | 65 24 22 27 2e 22 27 0d |as '"nam|e$"'."'.|
|00002d30| 0b 86 05 3a 0d 0b 90 05 | e0 0d 0b 9a 05 3a 0d 0b |...:....|.....:..|
|00002d40| a4 0f dd 20 a4 65 71 75 | 7a 28 73 24 29 0d 0b ae |... .equ|z(s$)...|
|00002d50| 0e 5b 4f 50 54 20 70 61 | 73 73 25 0d 0b b8 12 45 |.[OPT pa|ss%....E|
|00002d60| 51 55 53 20 73 24 3a 45 | 51 55 42 20 30 0d 0b c2 |QUS s$:E|QUB 0...|
|00002d70| 09 41 4c 49 47 4e 0d 0b | cc 08 5d 3a 3d 30 0d 0b |.ALIGN..|..]:=0..|
|00002d80| d6 05 3a 0d 0b e0 2b dd | 20 a4 63 6f 6d 6d 61 6e |..:...+.| .comman|
|00002d90| 64 28 63 6f 6d 24 2c 63 | 61 6c 6c 2c 66 6c 61 67 |d(com$,c|all,flag|
|00002da0| 73 2c 73 79 6e 74 61 78 | 2c 68 65 6c 70 29 0d 0b |s,syntax|,help)..|
|00002db0| ea 0e 5b 4f 50 54 20 70 | 61 73 73 25 0d 0b f4 0f |..[OPT p|ass%....|
|00002dc0| a4 65 71 75 7a 28 63 6f | 6d 24 29 0d 0b fe 18 45 |.equz(co|m$)....E|
|00002dd0| 51 55 44 20 63 61 6c 6c | 3a 45 51 55 44 20 66 6c |QUD call|:EQUD fl|
|00002de0| 61 67 73 0d 0c 08 19 45 | 51 55 44 20 73 79 6e 74 |ags....E|QUD synt|
|00002df0| 61 78 3a 45 51 55 44 20 | 68 65 6c 70 0d 0c 12 08 |ax:EQUD |help....|
|00002e00| 5d 3a 3d 30 0d ff | |]:=0.. | |
+--------+-------------------------+-------------------------+--------+--------+